ソースコード及びcsvデータのpathの設定
options(encoding="UTF-8")
setwd(source_path)
source("input_parameter.R")
source("input_csv_from_ANTAM.R")
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:data.table':
##
## between, first, last
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
data_path <- "/Users/yuki/OneDrive - cc.kyoto-su.ac.jp/M2/Experiment_data/R_study_testdata"
setwd(data_path)
# Get File List
# csvデータのファイルの取得
fl <- list.files(data_path,recursive=T, include.dirs=T, pattern="mouse.*csv")
dt <- get.datatable(fl)
## user system elapsed
## 0 0 0
## user system elapsed
## 0.800 0.074 0.721
## user system elapsed
## 1.687 0.136 1.501
## user system elapsed
## 2.566 0.216 2.277
## user system elapsed
## 3.381 0.259 2.949
## user system elapsed
## 4.247 0.323 3.690
## user system elapsed
## 5.167 0.387 4.486
## user system elapsed
## 6.235 0.480 5.452
## user system elapsed
## 7.009 0.531 6.080
## user system elapsed
## 7.850 0.587 6.780
## user system elapsed
## 8.581 0.620 7.350
## user system elapsed
## 9.490 0.671 8.117
## user system elapsed
## 10.246 0.709 8.709
## user system elapsed
## 11.029 0.763 9.349
## user system elapsed
## 11.843 0.813 10.021
## user system elapsed
## 12.699 0.861 10.724
## user system elapsed
## 13.485 0.901 11.359
## user system elapsed
## 14.277 0.951 11.999
## user system elapsed
## 15.108 1.007 12.688
## user system elapsed
## 16.091 1.058 13.545
## user system elapsed
## 16.911 1.111 14.256
## user system elapsed
## 17.785 1.174 14.992
## user system elapsed
## 18.649 1.236 15.719
## user system elapsed
## 19.448 1.284 16.368
## user system elapsed
## 20.258 1.350 17.038
## user system elapsed
## 21.115 1.410 17.753
## user system elapsed
## 21.982 1.465 18.470
## user system elapsed
## 22.747 1.507 19.087
## user system elapsed
## 23.540 1.569 19.741
## user system elapsed
## 24.317 1.608 20.360
## user system elapsed
## 25.115 1.658 21.009
## user system elapsed
## 25.958 1.699 21.691
## user system elapsed
## 26.907 1.778 22.513
## user system elapsed
## 27.805 1.859 23.303
## user system elapsed
## 28.623 1.907 24.021
## user system elapsed
## 29.481 1.976 24.769
## user system elapsed
## 30.332 2.048 25.503
## user system elapsed
## 31.299 2.104 26.331
## user system elapsed
## 32.226 2.174 27.137
## user system elapsed
## 33.230 2.263 28.042
## user system elapsed
## 34.156 2.315 28.832
## user system elapsed
## 35.059 2.379 29.612
## user system elapsed
## 35.909 2.425 30.322
## user system elapsed
## 36.838 2.500 31.125
## user system elapsed
## 37.825 2.589 32.008
path.unique <- as.character(unique(dt$path))
cond.unique <- c(list.files(data_path))
n <- length(unique(dt$id))
uid <- unique(dt$id)
# u.ind.id <- length(path.unique) / length(cond.unique) # 個体Noを割り振るための変数
取得した実験データから移動速度のヒストグラムを生成
setwd(source_path)
source("velocity_histgram.R")
## Scale for 'x' is already present. Adding another scale for 'x', which
## will replace the existing scale.
## Warning: Removed 296 rows containing non-finite values (stat_bin).
## Warning: Removed 2 rows containing missing values (geom_bar).
thresh <- 0 # get.thre() / 5 # 移動,停止の閾値を設ける場合,設定
stop.ratio <- c()
condition <- c()
meanv <- c()
nega <- c()
ind.id <- c()
trajectory_xy_max <- c()
num <- c()
for (i in 1:n) {
subd <- subset(dt, id == as.numeric(uid[i]))
num <- i
condition
for (j in 1:length(cond.unique)) {
if (length(grep(cond.unique[j], subd$path)) > 0)
condition[i] <- cond.unique[j]
}
# for(i in 1:length(cond.unique)){
# for(j in 1:length(u.ind.id)){
# ind.id <- j
# }
# }
#velovity & stop raio
dx <- diff(subd$x.V1)
dy <- diff(subd$y.V1)
v <- sqrt(dx ^ 2 + dy ^ 2)
stop.ratio[i] <- length(which(v < thresh)) / length(v)
meanv[i] <- mean(v[v > thresh])*5
# minmax for trajectory
abs_4points_xy <- c(abs(min(subd$x.V1)), abs(min(subd$y.V1)), abs(max(subd$x.V1)), abs(max(subd$y.V1)))
trajectory_xy_max[i] <- max(abs_4points_xy)
}
#5. 実験データの前処理
# 全条件をまとめたデータ
result <- data.frame(condition = condition, meanv = meanv, stop = stop.ratio, trajectory_xy_max = trajectory_xy_max,num = num)
#6.平均とSEをプロット
source("plot_graph.R")
plot.graph(result,result$meanv,"Velocity(mm/s)","conditions",20)
# plot.bar.All(result,result$meanv,"Velocity(mm/s)","conditions",cond.unique)
source('Trajectory.R')
plot_trajectory(result,dt)